
/*
*Released on 28th June 2008.
*Any violations can be reported at paritosh@wikiocean.net
*What is treated as violations can be found at www.wikiocean.net/ppl1-voilations*
******************************************************************************
* The contents of this file are subject to POOL Public License 1.0 and later.
* POOL Public License is based on Affero GPL v3 and additional conditions.
* ("License"); You may not use this file except in compliance with the License
* You may obtain a copy of the Affero GPL v3 License at http://www.gnu.org/licenses/agpl.html
* You may obtain a copy of the POOL Public License 1.0 or later at www.wikiocean.net/license/ppl.html
* Software distributed under POOL Public License 1.0 is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Initial Developer of the Original Code is Paritosh Pungaliya (C) 2008. All Rights Reserved.
******************************************************************************
* Objective of the additional terms (license)
* 1) Is to extend the software freedom to freedom to work.
* 2) To ensure that knowledge is free from monopoly of agencies.
* 3) To avoid a situation where big corporate or investor can buy out free software groups and companies and then start milking the communities built around it.
* (this trend can be seen how the freedom is curtailed in companies that get Venture Capital funding.)
******************************************************************************
*/

package  display;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.image.BufferedImage;
import java.util.Enumeration;
import java.util.Hashtable;
import java.io.*;
import javax.imageio.ImageIO;

import logger.PoolLogger;
import dbmanager.DBManager;

public class ViewReport {
	String id;
	String Image_file="c://image.jpeg";
	BufferedImage bufImage ;
	Graphics2D bufImageGraphics;
	Enumeration<String> htIterator;
	PoolLogger pl;
	
	public ViewReport(String id) 
	{
		this.id = id;
		bufImage =  new BufferedImage(550, 550,BufferedImage.TYPE_INT_RGB);
		bufImageGraphics = bufImage.createGraphics();
		
		// logger
		pl = (PoolLogger) PoolLogger.getLogger(this.getClass().getName());
	}
	
	public void put_heading()
	{
		int x=100,y=100;
		Hashtable<Object, Object> table = new Hashtable<Object, Object>();
		Hashtable<String, Color> color = new Hashtable< String,Color>();
				
		color.put("Red", Color.RED);			
		//Heading hd = new Heading(id);
		//table =  hd.Getmid();	
		
		htIterator = color.keys();
				
		//Color c = (Color)o;
		
		
		Color c= null ;
		
		while (htIterator.hasMoreElements())
		{
			c = color.get(table.get("Fgcolor"));			
			htIterator.nextElement();
		}		
		bufImageGraphics.setColor(c);		
		bufImageGraphics.setFont(new Font(table.get("Fonttype").toString() , 1 , Integer.parseInt(table.get("Fontsize").toString())));
		bufImageGraphics.drawString(table.get("Text").toString(), x, y);
		bufImageGraphics.setBackground(Color.CYAN);		
		System.out.println("the backgound color is"+bufImageGraphics.getBackground());
		File  file = new File(Image_file);
		try 
		   {
			ImageIO.write(bufImage, "jpeg",file );
			System.out.println("The out put image file is "+Image_file);
			pl.info("The out put image file is "+Image_file);
			pl.debug("The out put image file is "+Image_file);
			pl.warn("The out put image file is "+Image_file);
			pl.fatal("The out put image file is "+Image_file);
			pl.error("The out put image file is "+Image_file);
			pl.trace("The out put image file is "+Image_file);
		    } 
		catch (IOException e) 
		   {
			System.out.println("IoException in main()");
			pl.info("IoException in main()");
			pl.debug("IoException in main()");
			pl.warn("IoException in main()");
			pl.fatal("IoException in main()");
			pl.error("IoException in main()");
			pl.trace("IoException in main()");
		    }	
	   }
	public static void main(String[] args) 
	{
	ViewReport vw = new ViewReport("85");
	vw.put_heading();
	}
}
